/**
 * 
 */
package com.feonix.thread.sample1;

/**
 * @CopyRight (c)1993-2017
 * @Project common_practice
 * @Comments 请输入该类的描述
 * @NameSpace com.feonix.thread.sample1
 * @Author Feonixzw
 * @CreateDate 2018年2月1日
 */
public class TestSync2 implements Runnable {
	

	int b = 100;

	synchronized void m1() throws InterruptedException {
		b = 1000;

		Thread.sleep(500); // 6

		System.out.println("b=" + b);
	}

	synchronized void m2() throws InterruptedException {

		Thread.sleep(250); // 5
		b = 2000;
	}

	public static void main(String[] args) throws InterruptedException {

		TestSync2 tt = new TestSync2();

		Thread t = new Thread(tt); // 1
		t.start(); // 2
		tt.m2(); // 3

		System.out.println("main thread b=" + tt.b); // 4
	}

	@Override

	public void run() {
		try {
			m1();
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}
}
